
#ifndef _PLUG_MEDIA_AI_H__
#define _PLUG_MEDIA_AI_H__

#ifdef __cplusplus
extern "C" {
#endif  /* __cplusplus */

#include "hi_type.h"
#include "mpp_help.h"
#include "plug_common.h"

typedef HI_S32 (*PLUG_MEDIA_AI_CALLBACK_PTR)(PLUG_COMMON_AI_DATA_INFO* pstData);

typedef struct tagPLUG_MEDIA_AI_INFO
{
    PLUG_MEDIA_AI_CALLBACK_PTR pfnRecMsg;
    PLUG_MEDIA_AI_CALLBACK_PTR pfnRecordMsg;
}PLUG_MEDIA_AI_INFO;

/**
 * @brief    plug media ai init.
 * @param[in] none
 * @return 0 success,non-zero error code.
 * @exception    None
 */
HI_S32 PLUG_MEDIA_AI_Init(PLUG_MEDIA_AI_INFO stAiInfo);

/**
 * @brief    plug media ai start.
 * @param[in] none
 * @return 0 success,non-zero error code.
 * @exception    None
 */
HI_S32 PLUG_MEDIA_AI_Start(HI_VOID);

/**
 * @brief    plug media ai stop.
 * @param[in] none
 * @return 0 success,non-zero error code.
 * @exception    None
 */
HI_S32 PLUG_MEDIA_AI_Stop(HI_VOID);

/**
 * @brief    plug media ai init.
 * @param[in] none
 * @return 0 success,non-zero error code.
 * @exception    None
 */
HI_S32 PLUG_MEDIA_AI_Deinit(HI_VOID);


#ifdef __cplusplus
}
#endif

#endif // _PLUG_MEDIA_AI_H__

